// @use声明必须写在最前面
// Transition
@use './transition.scss';
// Element Plus
@use './element-plus.scss';
// Mixins
@use './mixins.scss';
// View Transition
@use './view-transition.scss';
// 全局 CSS 变量
@import './variables.css';
// Element Plus
@import './element-plus.css';

// 注册多主题
// @import './theme/register.scss';

// Vxe Table
// @import "./vxe-table.css";
// @import "./vxe-table.scss";

// 业务几乎都在根元素上挂载 class="app-container"，以保持页面美观
.app-container {
  padding: 20px;
}

html {
  height: 100%;
  // 灰色模式
  // scss嵌套语法，编译后结果为html.grey-mode,表示当 <html> 标签有 grey-mode 类名时生效。
  &.grey-mode {
    filter: grayscale(1);
  }
  // 色弱模式
  &.color-weakness {
    filter: invert(0.8);
  }
}

body {
  height: 100%;
  color: var(--v3-body-text-color);
  background-color: var(--v3-body-bg-color);
  // 以灰度抗锯齿渲染字体，提升锐度
  -moz-osx-font-smoothing: grayscale;
  // 启用抗锯齿，使字体在非Retina屏幕上更清晰
  -webkit-font-smoothing: antialiased;
  font-family:
    Inter, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei',
    '微软雅黑', Arial, sans-serif;
  @extend %scrollbar;
}

#app {
  height: 100%;
}

// 指定伪元素也采用同样的box-sizing计算方法，保证页面的一致性
*,
*::before,
*::after {
  box-sizing: border-box;
}

a,
a:focus,
a:hover {
  color: inherit;
  outline: none;
  text-decoration: none;
}

div:focus {
  outline: none;
}
